#ifndef _IMPORTFROM_H_
#define _IMPORTFROM_H_
#include "python3/PythonGrammar30TreeConstants.h"
#include "ast/stmtType.h"
#include "ast/aliasType.h"
#include "ast/NameTok.h"
#include "AstTypes.h"
class IVisitor;
class ImportFrom;
typedef QSharedPointer<ImportFrom> ImportFromPtr;

class ImportFrom: public stmtType
{
public:
    explicit ImportFrom(const NameTokPtr& module, const AliasTypeList& names, int level, int nodeId=JJTIMPORTFROM);
    virtual ~ImportFrom();
    
    
    NameTokPtr module();
    void setModule(const NameTokPtr& module);
    
    AliasTypeList names();
    void setNames(const AliasTypeList& names);
    
    int level();
    void setLevel(int level);
    
    
    virtual Ast::AstTypes type() const;
    virtual QString toString() const;
    virtual void accept(IVisitor* visitor, const SimpleNodePtr& node);
    virtual void traverse(IVisitor* visitor);
private:
    NameTokPtr _module;
    AliasTypeList _names;
    int _level;
};




#endif